#ifndef STX_STD_CPP_HEADERS_HPP
#define STX_STD_CPP_HEADERS_HPP

#include <stx/config.hpp>

// The Language Support Library
#include <exception>
#include <limits>
#include <new>
#include <typeinfo>

// The Diagnostics Library
#include <stdexcept>

// The General Utilities Library
#include <utility>
#include <functional>
#include <memory>

// The Standard String Templates
#include <string>

// Localization Classes and Templates
#include <locale>

// The Containers, Iterators and Algorithms Libraries (the Standard Template Library)
#include <algorithm>
#include <bitset>
#include <deque>
#include <iterator>
#include <list>
#include <map>
#include <queue>
#include <set>
#include <stack>
#include <vector>

// The Standard Numerics Library
#include <complex>
#include <numeric>
#include <valarray>

// The Standard Input/Output Library
#include <fstream>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <ostream>
#include <sstream>
#include <streambuf>

// C++ Headers for the Standard C Library
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>

#ifndef STX_BROKEN_CSETJMP
#include <csetjmp>
#else
#include <setjmp.h>
namespace std {
    using ::jmp_buf;
    using ::longjmp;
}
#endif

#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <cwchar>
#include <cwctype>

#endif // STX_STD_CPP_HEADERS_HPP
